<div class="col-xs-12">
  <div class="calculator-fields row">

    <div class="col-xs-6">
      <div class="field">
        <% field_name = "#{param_prefix}[calculator_type]" %>
        <%= label_tag field_name, Spree::Calculator.model_name.human %>
        <%= select_tag field_name,
                      options_from_collection_for_select(calculators, :to_s, :description, promotion_action.calculator.type),
                      :class => 'type-select select2 fullwidth' %>
        <% if promotion_action.calculator.respond_to?(:preferences) %>
          <span class="warning info"><%= Spree.t(:calculator_settings_warning) %></span>
        <% end %>
      </div>
    </div>

    <% unless promotion_action.new_record? %>
      <div class="col-xs-6">
        <div class="settings field">
          <% type_name = promotion_action.calculator.type.demodulize.underscore %>
          <% if lookup_context.exists?("fields",
              ["spree/admin/promotions/calculators/#{type_name}"], true) %>
            <%= render "spree/admin/promotions/calculators/#{type_name}/fields",
              calculator: promotion_action.calculator, prefix: param_prefix %>
          <% else %>
            <%= render "spree/admin/promotions/calculators/default_fields",
              calculator: promotion_action.calculator, prefix: param_prefix %>
          <% end %>
          <%= hidden_field_tag "#{param_prefix}[calculator_attributes][id]", promotion_action.calculator.id %>
        </div>
      </div>
    <% end %>
  </div>
</div>
